/*
 * FrontCoding.h
 *
 *  Created on: 07/11/2010
 *      Author: julfc
 */

#ifndef FRONTCODING_H_
#define FRONTCODING_H_

#include <string>
#include <stdio.h>
#include <cstdio>
#include <stdlib.h>
#include <sstream>
#include <iostream>
#include <vector>

#include "PalabraFrontCoding.h"

using namespace std;

class FrontCoding {
public:
	FrontCoding();
	//El vector de palabras debe venir ordenado.
	vector<PalabraFrontCoding> encode(vector<string> palabras);
	vector<string> decode(vector<PalabraFrontCoding> palabras);
	virtual ~FrontCoding();

private:
	string decodearPalabra (PalabraFrontCoding toDecode, string str1);
	PalabraFrontCoding encodearPalabra (string str1, string str2);
	int cantidaCaractEnComun(string str1, string str2);
};

#endif /* FRONTCODING_H_ */
